/*
 * @Author: WangShuai 1830773767@qq.com
 * @Date: 2025-06-17 18:50:38
 * @LastEditors: WangShuai 1830773767@qq.com
 * @LastEditTime: 2025-06-17 20:41:29
 * @FilePath: \vue3_admin_template\project\src\directive\hasButton.ts
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */
import pinia from '@/store'
import useUserStore from '@/store/modules/user'
let userStore = useUserStore(pinia)
export const isHasButton = (app: any) => {
  //全局自定义指令 实现全局按钮权限
  app.directive('has', {
    //代表使用这个全局自定义指令的DOM挂载完毕的时候会执行一次
    mounted(el: any, options: any) {
      //自定义指令 右侧的数值:如果在用户信息的buttons数组当中没有
      if (!userStore.buttons.includes(options.value)) {
        //从DOM树中直接干掉
        el.parentNode.removeChild(el)
      }
    },
  })
}
